#include <iostream>
#include <memory>

#include "Motorcycle.h"

using namespace std;

int main()
{
	shared_ptr<Vehicle> vehicle;

	vehicle.reset(new Vehicle());
	vehicle->run();
	vehicle->stop();

	vehicle.reset(new Bicycle());
	vehicle->run();
	vehicle->stop();

	vehicle.reset(new Motorcar());
	vehicle->run();
	vehicle->stop();

	vehicle.reset(new Motorcycle());
	vehicle->run();
	vehicle->stop();


	vehicle.reset(new Vehicle());
	vehicle->run();

	vehicle.reset(new Bicycle());
	vehicle->run();

	vehicle.reset(new Motorcar());
	vehicle->run();

	vehicle.reset(new Motorcycle());
	vehicle->run();
	return 0;
}